<html>

	<head>
		<title>5.6 声明式事务</title>
		<meta charset="utf-8" />
		<meta name="author" content="jfinal,yaolin" />
		<meta name="Keywords" content="" />
		<link rel="stylesheet" type="text/css" href="../../css/global.css" />
	</head>

	<body>
		<h1>5.6 声明式事务</h1>
		<p>ActiveRecord 支持声名式事务， 声明式事务需要使用 ActiveRecordPlugin 提供的拦截器来 实现，拦截器的配置方法见 Interceptor 有关章节。 以下代码是声明式事务示例：</p>
		<img src="../../images/ativeRecord/5.6.1.png" />
		<p>以上代码中，仅声明了一个 Tx 拦截器即为 action 添加了事务支持。除此之外 ActiveRecord 还配备了 TxByActionKeys、 TxByActionKeyRegex、 TxByMethods、 TxByMethodRegex，分别 支持 actionKeys、 actionKey 正则、 actionMethods、 actionMethod 正则声明式事务，以下是示例 代码：
		</p>
		<img src="../../images/ativeRecord/5.6.2.png" />
		<p>上例中的 TxByRegex 拦截器可通过传入正则表达式对 action 进行拦截，当 actionKey 被正 则匹配上将开启事务。 TxByActionKeys 可以对指定的 actionKey 进行拦截并开启事务， TxByMethods 可以对指定的 method 进行拦截并开启事务。</p>
		<p class="red">注意： MySql 数据库表必须设置为 InnoDB 引擎时才支持事务， MyISAM 并不支持事务。</p>
	</body>

</html>